package array

import "sort"

// 给定一个整数数组，判断是否存在重复元素。
// 如果存在一值在数组中出现至少两次，函数返回 true 。
// 如果数组中每个元素都不相同，则返回 false 。

func ContainsDuplicate(nums []int) bool {
	numsLength := len(nums)
	if numsLength == 0 || numsLength == 1 {
		return false
	}

	sort.Ints(nums)

	for i := 1; i < numsLength; i++ {
		if i == numsLength-1 {
			if nums[i] == nums[i-1] {
				return true
			}
		} else if nums[i] == nums[i-1] || nums[i] == nums[i+1] {
			return true
		}
	}

	return false
}
